﻿using System;
using System.Collections.Generic;
using System.Text;

namespace NNFramework.NeuroLibrary
{
    /// <summary>
    /// Class that represents a dendrite of a basic Neuron
    /// </summary>
    [Serializable]
    public class clsDendrite<T> : clsBase
    {
        #region Members Section

        private T mgenDendriteValue;
        private double mdblDendriteWeight;

        #endregion

        #region Properties Section

        /// <summary>
        /// Gets the Dendrite Value
        /// </summary>
        public T DendriteValue
        {
            get { return mgenDendriteValue; }
            set { mgenDendriteValue = value; }
        }

        /// <summary>
        /// Gets the Dendrite Weight
        /// </summary>
        public double DendriteWeight
        {
            get { return mdblDendriteWeight; }
            set { mdblDendriteWeight = value; }
        }

        #endregion

        #region Constructors Section

        /// <summary>
        /// Public default constructor
        /// </summary>
        public clsDendrite()
        {
            
        }

        /// <summary>
        /// Public constructor
        /// </summary>
        /// <param name="pgenValue">The Value for the Dendrite</param>
        /// <param name="pdblWeight">The Weight for the Dendrite</param>
        public clsDendrite(T pgenValue, double pdblWeight)
        {
            mgenDendriteValue = pgenValue;
            mdblDendriteWeight = pdblWeight;
        }

        #endregion
    }
}
